home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC]
/
NeXTSTEP 3.3 Dev Intel.iso
/
NextDeveloper
/
Headers
/
apps
/
InterfaceBuilder.h
next >
Wrap
Text File
|
1994-03-29
|
6KB
|
206 lines
/* InterfaceBuilder - InterfaceBuilder.h - Jean-Marie Hullot
* (c) 1991 NeXT Computer Inc.
*/
#import <appkit/appkit.h>
@class Sound;
/* InterfaceBuilder Pasteboard types */
extern NXAtom IBObjectPboardType;
extern NXAtom IBCellPboardType;
extern NXAtom IBMenuPboardType;
extern NXAtom IBMenuCellPboardType;
extern NXAtom IBViewPboardType;
extern NXAtom IBWindowPboardType;
@protocol IB
/* Accessing the document. */
- activeDocument;
/* Accessing the selection owner. */
- selectionOwner;
/* Managing connections. The following might be useful when
* implementing your own ConnectionInspector. */
- connectSource;
- connectDestination;
- (BOOL)isConnecting;
- stopConnecting;
- displayConnectionBetween:source and:destination;
/* Querying the mode. */
- (BOOL)isTestingInterface;
/* Registering controllers. */
- registerDocumentController:aController;
- unregisterDocumentController:aController;
/* Updater. Not supported as public API in Release 3. */
- disableUpdate;
- reenableUpdate;
@end
@protocol IBConnectors
- free;
- source;
- destination;
- establishConnection;
- nibInstantiate;
- renewObject:old to:new;
- read:(NXTypedStream *)stream;
- write:(NXTypedStream *)stream;
@end
@protocol IBDocumentControllers
- didOpenDocument:theDocument;
- willSaveDocument:theDocument;
- didSaveDocument:theDocument;
@end
@protocol IBDocuments
/* Managing the document. */
- touch;
- getDocumentPathIn:(char *)thePath;
/* Managing the document hierarchy. */
- attachObject:anObject to:parent;
- attachObjects:(List *)objectList to:parent;
- deleteObject:anObject;
- deleteObjects:(List *)objectList;
- copyObject:anObject type:(NXAtom)type inPasteboard:(Pasteboard *)aPasteboard;
- copyObjects:(List *)objectList type:(NXAtom)type
inPasteboard:(Pasteboard *)aPasteboard;
- (List *)pasteType:(NXAtom)type fromPasteboard:(Pasteboard *)aPasteboard
parent:theParent;
- (BOOL)objectIsMember:anObject;
- getObjects:(List *)objectList;
- getParentForObject:anObject;
/* Setting object names. */
- (BOOL)setName:(const char *)name for:anObject;
- getNameIn:(char *)buffer for:anObject;
/* Managing connectors. */
- addConnector:aConnector;
- removeConnector:aConnector;
- listConnectors:(List *)aList forSource:aSource;
- listConnectors:(List *)aList forDestination:aDestination;
- listConnectors:(List *)aList forSource:aSource filterClass:aClass;
- listConnectors:(List *)aList forDestination:aDestination filterClass:aClass;
/* Managing editors. */
- setSelectionFrom:anEditor;
- editorDidClose:anEditor for:anObject;
- getEditor:(BOOL)createIt for:anObject;
- openEditorFor:anObject;
/* Updating the display. */
- redrawObject:anObject;
@end
@protocol IBSelectionOwners
- (unsigned int)selectionCount;
- getSelectionInto:(List *)objectList;
- redrawSelection;
@end
@protocol IBEditors <IBSelectionOwners>
/* Initializing. */
- initWith:anObject inDocument:aDocument;
/* Identifying objects. */
- document;
- editedObject;
- window;
/* Displaying objects. */
- resetObject:anObject;
/* Managing the selection. */
- (BOOL) wantsSelection;
- selectObjects:(List *)objectList;
- makeSelectionVisible:(BOOL)showIt;
/* Copying and pasting objects. */
- (BOOL)copySelection;
- (BOOL)deleteSelection;
- (BOOL)pasteInSelection;
- (NXAtom)acceptsTypeFrom:(const NXAtom *)typeList;
/* Opening and closing editors. */
- close;
- openSubeditorFor:anObject;
- closeSubeditors;
/* Activating the editor. */
- orderFront;
- (BOOL)activate;
@end
@protocol IBInspectors
/* Returns a boolean value indicating whether the inspector object requires
* Interface Builder to display the OK and Revert buttons in the Inspector
* panel. */
- (BOOL)wantsButtons;
/* Interface Builder sends this message to the inspector object whenever
* the inspector's display might need to be updated. Your inspector must
* implement this method, and it must send the same message to `super' as
* part of its implementation. */
- revert:sender;
/* Implement in your inspector to commit the changes that the user makes in
* the Inspector panel. Your implementation of this method must send the
* same message to `super'. */
- ok:sender;
@end
@interface Object (IBObject)
- (const char *)getInspectorClassName;
- (const char *)getConnectInspectorClassName;
- (const char *)getSizeInspectorClassName;
- (const char *)getHelpInspectorClassName;
- (const char *)getEditorClassName;
- (NXImage *)getIBImage;
@end
@interface View (IBView)
#define IB_BOTTOMLEFT 0
#define IB_MIDDLELEFT 1
#define IB_TOPLEFT 2
#define IB_MIDDLETOP 3
#define IB_TOPRIGHT 4
#define IB_MIDDLERIGHT 5
#define IB_BOTTOMRIGHT 6
#define IB_MIDDLEBOTTOM 7
- getMinSize:(NXSize *)minSize maxSize:(NXSize *)maxSize from:(int)where;
- placeView:(NXRect *)frameRect;
/* The default implementation sends `setFrame:'. */
@end
@interface IBInspector:Object <IBInspectors>
{
id object;
id window;
id driver; /* private! */
id okButton;
id revertButton;
}
- object;
- window;
- touch:sender;
- textDidChange:sender;
- updateFor:(int)changeMask; /* Not supported as public API in Release 3 */
@end
@interface IBPalette:Object
{
id paletteDocument;
id originalWindow;
id paletteView;
id draggedView;
id paletteInfo; /* private! */
}
/* Associating views and objects. */
- associateObject:object type:(NXAtom)type with:aView;
/* Initializing the palette. */
- finishInstantiate;
/* Accessing related objects. */
- paletteDocument;
- originalWindow;
- findImageNamed:(const char *)name;
/* Private API. */
- paletteView; /* Not supported as public API in Release 3. */
- draggedView; /* Not supported as public API in Release 3. */
- declareTypesFor:aView inPasteboard:(Pasteboard *)aPasteboard;
/* Not supported as public API in Release 3. */
- pasteboard:aPasteboard provideData:(NXAtom)type;
/* Not supported as public API in Release 3. */
@end